home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 30
/
Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso
/
Aminet
/
dev
/
lang
/
SmallEiffel.lha
/
SmallEiffel
/
bin_c
/
compile_to_c50.c
< prev
next >
Wrap
C/C++ Source or Header
|
1998-12-22
|
73KB
|
2,988 lines
/*
-- ANSI C code generated by :
-- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.79) --
-- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
-- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr --
-- http://www.loria.fr/SmallEiffel --
*/
#include "compile_to_c.h"
T0*oBC44std_fr2=NULL;
T6 r44same_files(T0* a1,T0* a2){
T6 R=0;
r37connect_to((T37*)(oBC44std_fr1),a1);
/*[IF*/
if(/*(IRF4.7is_connected*/(((T37*)(oBC44std_fr1))->_path/*4*/)!=(NULL)/*)*/){
r37connect_to((T37*)(oBC44std_fr2),a2);
/*[IF*/
if(/*(IRF4.7is_connected*/(((T37*)(oBC44std_fr2))->_path/*4*/)!=(NULL)/*)*/){
R=r37same_as((T37*)(oBC44std_fr1),oBC44std_fr2);
}
/*FI]*/
}
else{
r37disconnect((T37*)(oBC44std_fr1));
}
/*FI]*/
return R;
}
T0*oBC44std_fr1=NULL;
void r44delete(int C,T0* a1){
T8 _p=0;
_p=r7to_external(((T7*)a1));
remove(((char*)_p));
}
T6 r44is_readable(T0* a1){
T6 R=0;
r37connect_to((T37*)(oBC44std_fr1),a1);
R=/*(IRF4.7is_connected*/(((T37*)(oBC44std_fr1))->_path/*4*/)!=(NULL)/*)*/;
/*[IF*/
if(R){
r37disconnect((T37*)(oBC44std_fr1));
}
/*FI]*/
return R;
}
void r44rename_to(T0* a1,T0* a2){
T8 _p2=0;
T8 _p1=0;
_p1=r7to_external(((T7*)a1));
_p2=r7to_external(((T7*)a2));
rename(((char*)_p1),((char*)_p2));
}
void r372c_assertion_flag(T372* C){
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms51_3077376)))))->_count)=(0);
/*]*/
r372c_frame_descriptor_name_in(C,((T0*)ms51_3077376));
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_30510));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
}
void r372c_define_opening(T372* C){
T0* _t=NULL;
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_21736));
/*]*/
}
/*FI]*/
/*[IF*/
/*AF*//*AF*//*AE*/
/*FI]*/
/*[IF*/
if(((C)->_local_vars/*40*/)!=((void*)(NULL))){
r178c_declare((T178*)((C)->_local_vars/*40*/));
}
/*FI]*/
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215c_declare_for_old((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IF*/
if((((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)>(0)){
r7copy((T7*)(((T0*)ms51_3077376)),((T0*)ms51_21762));
/*[IRF3.5append_in*/r2append_in(((T2)(((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)),((T0*)ms51_3077376));
/*]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\135');
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms13_144));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
}
/*FI]*/
r372c_initialize_ds_one_by_one(C);
/*[IRF3.2c_initialize_locals_one_by_one*/{T3 _c=0;
T2 _j=0;
T2 _i=0;
_j=1;
while (!((((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)==(_i))) {
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_8225));
/*]*/
/*[IRF3.5put_integer*/r45put_integer(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),_i);
/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_314));
/*]*/
_c=/*(IRF4.6item*/(((T7*)(oBC12c_frame_descriptor_locals))->_storage/*0*/)[(_j)-(1)]/*)*/;
while (!((_c)==('\54'))) {
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1=_c;
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
_j=(_j)+(1);
_c=/*(IRF4.6item*/(((T7*)(oBC12c_frame_descriptor_locals))->_storage/*0*/)[(_j)-(1)]/*)*/;
}
_j=(_j)+(1);
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_144));
/*]*/
_i=(_i)+(1);
}
}/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_14820a));
/*]*/
}
/*FI]*/
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215compile_to_c_old((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_23488));
/*]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_147634));
/*]*/
}
/*FI]*/
r216compile_to_c((T216*)((C)->_rescue_compound/*48*/));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_48457));
/*]*/
}
/*FI]*/
/*[IF*/
if(((C)->_local_vars/*40*/)!=((void*)(NULL))){
r178initialize_expanded((T178*)((C)->_local_vars/*40*/));
}
/*FI]*/
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_7601));
/*]*/
}
/*FI]*/
/*[IF*/
if(((C)->_require_assertion/*20*/)!=((void*)(NULL))){
r357compile_to_c((T357*)((C)->_require_assertion/*20*/));
}
/*FI]*/
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_58520));
/*]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_14820));
/*]*/
}
/*FI]*/
}
/*FI]*/
}
void r372c_define_closing(T372* C){
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215compile_to_c((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r372use_current(C)){
r25current_class_invariant((C)->_current_type/*4*/);
}
/*FI]*/
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_25830));
/*]*/
}
/*FI]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_19775));
/*]*/
}
/*FI]*/
}
/*No:RUN_FEATURE_10.use_current_state*/
void r372default_mapping_procedure(T372* C){
r372default_mapping_function(C);
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_144));
/*]*/
}
/*No:RUN_FEATURE_10.fz_void*/
/*No:RUN_FEATURE_10.address_of_c_define*/
/*No:RUN_FEATURE_10.ucs_false*/
/*No:RUN_FEATURE_10.is_static*/
T0* r372start_position(T372* C){
T0* R=NULL;
R=r302start_position((T302*)((C)->_base_feature/*32*/));
return R;
}
/*No:RUN_FEATURE_10.c_initialize_locals_one_by_one*/
void r372mapping_name(T372* C){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='r';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_integer*/r45put_integer(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),r372id(C));
/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),X83to_key((C)->_name/*16*/));
/*]*/
}
T6 r372use_current(T372* C){
T6 R=0;
{int z1=(C)->_use_current_state/*28*/;
if((14==z1)){
R=1;
}
else
if((13==z1)){
}
else
if((15==z1)){
C->_use_current_state=16;
/*[IRF3.4compute_use_current*/r372std_compute_use_current(C);
/*]*/
R=r372use_current(C);
}
else {R=1;
}}
return R;
}
T2 r372id(T372* C){
T2 R=0;
R=X54id((C)->_current_type/*4*/);
return R;
}
void r372routine_afd_check(T372* C){
/*[IF*/
if(((C)->_require_assertion/*20*/)!=((void*)(NULL))){
r357afd_check((T357*)((C)->_require_assertion/*20*/));
}
/*FI]*/
/*[IF*/
if(((C)->_routine_body/*44*/)!=((void*)(NULL))){
r216afd_check((T216*)((C)->_routine_body/*44*/));
}
/*FI]*/
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
r216afd_check((T216*)((C)->_rescue_compound/*48*/));
}
/*FI]*/
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215afd_check((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
void r372std_compute_use_current(T372* C){
/*[IF*/
if(((C)->_use_current_state/*28*/)==(16)){
/*[IF*/
if(((C)->_require_assertion/*20*/)!=((void*)(NULL))){
/*[IF*/
if(r357use_current((T357*)((C)->_require_assertion/*20*/))){
C->_use_current_state=14;
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(((C)->_use_current_state/*28*/)==(16)){
/*[IF*/
if(((C)->_routine_body/*44*/)!=((void*)(NULL))){
/*[IF*/
if(r216use_current((T216*)((C)->_routine_body/*44*/))){
C->_use_current_state=14;
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(((C)->_use_current_state/*28*/)==(16)){
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IF*/
if(r216use_current((T216*)((C)->_rescue_compound/*48*/))){
C->_use_current_state=14;
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(((C)->_use_current_state/*28*/)==(16)){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
/*[IF*/
if(r215use_current((T215*)((C)->_ensure_assertion/*24*/))){
C->_use_current_state=14;
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(((C)->_use_current_state/*28*/)==(16)){
C->_use_current_state=13;
}
/*FI]*/
}
T0* r372run_class(T372* C){
T0* R=NULL;
R=X54run_class((C)->_current_type/*4*/);
return R;
}
/*No:RUN_FEATURE_10.result_type*/
/*No:RUN_FEATURE_10.base_feature*/
/*No:RUN_FEATURE_10.ensure_assertion*/
/*No:RUN_FEATURE_10.static_value_mem*/
T6 r372is_exported_in(T372* C,T0* a1){
T6 R=0;
R=r101gives_permission_to((T101*)(r372clients(C)),a1);
return R;
}
void r372default_mapping_function(T372* C){
T6 _tcbd=0;
T6 _uc=0;
T6 _no_check=0;
_no_check=r43no_check((T43*)(oBC12run_control));
_uc=r372use_current(C);
/*[IF*/
if(!(_uc)){
_tcbd=r25target_cannot_be_dropped((T25*)(oBC12cpp));
/*[IF*/
if(_tcbd){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\54';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
/*FI]*/
r372mapping_name(C);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IF*/
if(_no_check){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_777));
/*]*/
}
/*FI]*/
/*[IF*/
if(_uc){
/*[IF*/
if(_no_check){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\54';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
r25put_target_as_target((T25*)(oBC12cpp));
}
/*FI]*/
/*[IF*/
if(((C)->_arguments/*36*/)!=((void*)(NULL))){
/*[IF*/
if((_uc)||(_no_check)){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\54';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
r25put_arguments((T25*)(oBC12cpp));
}
/*FI]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IF*/
if((!(_uc))&&(_tcbd)){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
/*No:RUN_FEATURE_10.arguments*/
/*No:RUN_FEATURE_10.is_once_function*/
/*No:RUN_FEATURE_10.current_type*/
/*No:RUN_FEATURE_10.clients_memory*/
void r372add_client(T372* C,T0* a1){
T2 _i=0;
/*[IF*/
if(((C)->_actuals_clients/*12*/)==((void*)(NULL))){
{T60*n=malloc(sizeof(*n));
*n=M60;
r60with_capacity(n,4);
C->_actuals_clients=(T0*)n;
}
r60add_last((T60*)((C)->_actuals_clients/*12*/),a1);
}
else{
_i=r60fast_index_of((T60*)((C)->_actuals_clients/*12*/),a1);
/*[IF*/
if((_i)>(((T60*)((C)->_actuals_clients/*12*/))->_upper/*8*/)){
r60add_last((T60*)((C)->_actuals_clients/*12*/),a1);
}
/*FI]*/
}
/*FI]*/
r24add_client((T24*)(r372run_class(C)),a1);
}
/*No:RUN_FEATURE_10.ucs_in_computation*/
void r372make(T372* C,T0* a1,T0* a2,T0* a3){
C->_current_type=a1;
C->_name=a2;
C->_base_feature=a3;
/*[IRF3.5add_rf*/r325put(((T325*)(((T24*)(r372run_class(C)))->_feature_dictionary/*24*/)),(T0*)C,X83to_key(a2));
/*]*/
r22incr_magic_count((T22*)(oBC12small_eiffel));
C->_use_current_state=15;
r22push((T22*)(oBC12small_eiffel),(T0*)C);
r372initialize(C);
r22pop((T22*)(oBC12small_eiffel));
}
/*No:RUN_FEATURE_10.routine_body*/
/*No:RUN_FEATURE_10.ucs_true*/
/*No:RUN_FEATURE_10.name*/
/*No:RUN_FEATURE_10.afd_check*/
T0* r372clients(T372* C){
T0* R=NULL;
T0* _bfbc=NULL;
T0* _bc=NULL;
/*[IF*/
if(((C)->_clients_memory/*8*/)==((void*)(NULL))){
_bc=X54base_class((C)->_current_type/*4*/);
_bfbc=((T302*)((C)->_base_feature/*32*/))->_base_class/*4*/;
/*[IF*/
if((_bc)==((void*)(_bfbc))){
R=((T302*)((C)->_base_feature/*32*/))->_clients/*20*/;
}
else{
R=r63clients_for(((T63*)_bc),(C)->_name/*16*/);
}
/*FI]*/
C->_clients_memory=R;
}
else{
R=(C)->_clients_memory/*8*/;
}
/*FI]*/
return R;
}
void r372c_define(T372* C){
/*[IF*/
if(r372use_current(C)){
r25incr_procedure_count((T25*)(oBC12cpp));
}
else{
r25incr_real_procedure_count((T25*)(oBC12cpp));
}
/*FI]*/
r372define_prototype(C);
r372c_define_opening(C);
/*[IF*/
if(((C)->_routine_body/*44*/)!=((void*)(NULL))){
r216compile_to_c((T216*)((C)->_routine_body/*44*/));
}
/*FI]*/
r372c_define_closing(C);
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_276));
/*]*/
r372c_frame_descriptor(C);
}
void r372once_result_in(T372* C,T0* a1){
r7extend(((T7*)a1),'o');
r302mapping_c_name_in((T302*)((C)->_base_feature/*32*/),a1);
}
/*No:RUN_FEATURE_10.rescue_compound*/
void r372fall_down(T372* C){
T0* _rf=NULL;
T0* _sub_name=NULL;
T0* _sub_bc=NULL;
T0* _current_bc=NULL;
T0* _sub_rc=NULL;
T0* _current_rc=NULL;
T2 _i=0;
T0* _running=NULL;
_current_rc=X54run_class((C)->_current_type/*4*/);
_running=(((T24*)_current_rc))->_running/*12*/;
/*[IF*/
if((_running)!=((void*)(NULL))){
_current_bc=X54base_class((C)->_current_type/*4*/);
_i=(((T328*)_running))->_lower/*12*/;
while (!((_i)>((((T328*)_running))->_upper/*8*/))) {
_sub_rc=r328item(((T328*)_running),_i);
/*[IF*/
if((_sub_rc)!=((void*)(_current_rc))){
_sub_bc=X54base_class((((T24*)_sub_rc))->_current_type/*0*/);
_sub_name=r63new_name_of(((T63*)_sub_bc),_current_bc,(C)->_name/*16*/);
_rf=r24get_feature(((T24*)_sub_rc),_sub_name);
}
/*FI]*/
_i=(_i)+(1);
}
}
/*FI]*/
}
/*No:RUN_FEATURE_10.actuals_clients*/
/*No:RUN_FEATURE_10.us_result*/
void r372define_prototype(T372* C){
T6 _no_check=0;
T2 _mem_id=0;
_no_check=r43no_check((T43*)(oBC12run_control));
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IRF3.3reset*/((((T204*)((T204*)(oBC12c_frame_descriptor_local_count))))->_value)=(0);
/*]*/
/*[IRF3.3clear*/((((T7*)((T7*)(oBC12c_frame_descriptor_format))))->_count)=(0);
/*]*/
r7extend((T7*)(oBC12c_frame_descriptor_format),'\42');
/*[IRF3.3clear*/((((T7*)((T7*)(oBC12c_frame_descriptor_locals))))->_count)=(0);
/*]*/
}
/*FI]*/
_mem_id=r372id(C);
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms51_3077376)))))->_count)=(0);
/*]*/
/*[IF*/
{/*AT*/r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms13_1776a));
}
/*FI]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\40');
r7extend((T7*)(((T0*)ms51_3077376)),'r');
r2append_in(_mem_id,((T0*)ms51_3077376));
X83mapping_c_in((C)->_name/*16*/,((T0*)ms51_3077376));
r7extend((T7*)(((T0*)ms51_3077376)),'\50');
/*[IF*/
if(_no_check){
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_56460));
/*[IF*/
if((r372use_current(C))||(((C)->_arguments/*36*/)!=((void*)(NULL)))){
r7extend((T7*)(((T0*)ms51_3077376)),'\54');
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r372use_current(C)){
X54c_type_for_target_in((C)->_current_type/*4*/,((T0*)ms51_3077376));
r7extend((T7*)(((T0*)ms51_3077376)),'\40');
r7extend((T7*)(((T0*)ms51_3077376)),'C');
X54c_frame_descriptor((C)->_current_type/*4*/);
/*[IF*/
if(((C)->_arguments/*36*/)!=((void*)(NULL))){
r7extend((T7*)(((T0*)ms51_3077376)),'\54');
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(((C)->_arguments/*36*/)==((void*)(NULL))){
/*[IF*/
if(_no_check){
}
else if(!(r372use_current(C))){
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms13_1776a));
}
/*FI]*/
}
else{
r187compile_to_c_in((T187*)((C)->_arguments/*36*/),((T0*)ms51_3077376));
}
/*FI]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\51');
r25put_c_heading((T25*)(oBC12cpp),((T0*)ms51_3077376));
/*[IRF3.3swap_on_c*/((((T25*)((T25*)(oBC12cpp))))->_current_out)=(oBC25out_c);
/*]*/
}
void r372put_tag(T372* C){
T0* _fn=NULL;
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\42';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
_fn=/*(IRF4.6first_name*/r85item(((T85*)(((T302*)((C)->_base_feature/*32*/))->_names/*8*/)),1)/*)*/;
X83put_cpp_tag(_fn);
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),X83to_string(_fn));
/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_1148));
/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T64*)(/*(IRF4.6base_class_name*/(((T63*)(((T302*)((C)->_base_feature/*32*/))->_base_class/*4*/)))->_name/*24*//*)*/))->_to_string/*0*/);
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\42';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*No:RUN_FEATURE_10.c_code*/
/*No:RUN_FEATURE_10.fz_00*/
void r372c_initialize_ds_one_by_one(T372* C){
r7copy((T7*)(((T0*)ms51_3077376)),((T0*)ms51_37325));
r372c_frame_descriptor_name_in(C,((T0*)ms51_3077376));
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms13_144));
/*[IF*/
if(r372use_current(C)){
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_18550));
}
else{
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_11254));
}
/*FI]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
r25put_position_in_ds(r372start_position(C));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_11736));
/*]*/
/*[IF*/
if((((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)>(0)){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_12150));
/*]*/
}
/*FI]*/
}
/*No:RUN_FEATURE_10.ucs_not_computed*/
/*No:RUN_FEATURE_10.is_pre_computable*/
/*No:RUN_FEATURE_10.fz_12*/
/*No:RUN_FEATURE_10.collect_c_tmp*/
void r372c_frame_descriptor(T372* C){
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
r7copy((T7*)(((T0*)ms51_3077376)),((T0*)ms51_23640));
r372c_frame_descriptor_name_in(C,((T0*)ms51_3077376));
r25put_extern7((T25*)(oBC12cpp),((T0*)ms51_3077376));
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\173';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
r372put_tag(C);
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms51_3077376)))))->_count)=(0);
/*]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\54');
/*[IF*/
if(r372use_current(C)){
r7extend((T7*)(((T0*)ms51_3077376)),'1');
}
else{
r7extend((T7*)(((T0*)ms51_3077376)),'0');
}
/*FI]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\54');
/*[IRF3.5append_in*/r2append_in(((T2)(((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)),((T0*)ms51_3077376));
/*]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\54');
r7append((T7*)(((T0*)ms51_3077376)),oBC12c_frame_descriptor_format);
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_2316));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
}
/*FI]*/
}
T2 r372arg_count(T372* C){
T2 R=0;
/*[IF*/
if(((C)->_arguments/*36*/)!=((void*)(NULL))){
R=/*(IRF4.6count*/(((T191*)(((T187*)((C)->_arguments/*36*/))->_flat_list/*8*/)))->_upper/*12*//*)*/;
}
/*FI]*/
return R;
}
/*No:RUN_FEATURE_10.address_of_c_mapping*/
/*No:RUN_FEATURE_10.mapping_c*/
/*No:RUN_FEATURE_10.can_be_dropped*/
void r372initialize(T372* C){
C->_arguments=((T302*)((C)->_base_feature/*32*/))->_arguments/*24*/;
/*[IF*/
if(((C)->_arguments/*36*/)!=((void*)(NULL))){
/*[IF*/
if(!(r187is_runnable((T187*)((C)->_arguments/*36*/),(C)->_current_type/*4*/))){
{T187*n=malloc(sizeof(*n));
*n=M187;
r187with(n,(C)->_arguments/*36*/,(C)->_current_type/*4*/);
C->_arguments=(T0*)n;
}
}
/*FI]*/
}
/*FI]*/
C->_local_vars=((T302*)((C)->_base_feature/*32*/))->_local_vars/*16*/;
/*[IF*/
if(((C)->_local_vars/*40*/)!=((void*)(NULL))){
C->_local_vars=r178to_runnable((T178*)((C)->_local_vars/*40*/),(C)->_current_type/*4*/);
}
/*FI]*/
C->_routine_body=((T302*)((C)->_base_feature/*32*/))->_routine_body/*44*/;
/*[IF*/
if(((C)->_routine_body/*44*/)!=((void*)(NULL))){
C->_routine_body=r216to_runnable((T216*)((C)->_routine_body/*44*/),(C)->_current_type/*4*/);
}
/*FI]*/
/*[IF*/
if(r43require_check((T43*)(oBC12run_control))){
C->_require_assertion=r302run_require((T0*)C);
}
/*FI]*/
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
C->_ensure_assertion=r302run_ensure((T0*)C);
}
/*FI]*/
C->_rescue_compound=((T302*)((C)->_base_feature/*32*/))->_rescue_compound/*48*/;
/*[IF*/
if(((C)->_rescue_compound/*48*/)!=((void*)(NULL))){
/*[IRF3.3set_used*/((((T363*)((T363*)(oBC12exceptions_handler))))->_used)=(1);
/*]*/
C->_rescue_compound=r216to_runnable((T216*)((C)->_rescue_compound/*48*/),(C)->_current_type/*4*/);
}
/*FI]*/
}
/*No:RUN_FEATURE_10.require_assertion*/
/*No:RUN_FEATURE_10.compute_use_current*/
/*No:RUN_FEATURE_10.local_vars*/
void r372c_frame_descriptor_name_in(T372* C,T0* a1){
r7extend(((T7*)a1),'f');
r2append_in(r372id(C),a1);
X83mapping_c_in((C)->_name/*16*/,a1);
}
/*No:BIT_CONSTANT.static_value*/
/*No:BIT_CONSTANT.hexa*/
void r55c_define(T55* C){
T2 _digit_nb=0;
T2 _k=0;
T2 _i=0;
_digit_nb=(sizeof(T2))*(2);
_k=(((T7*)((C)->_hexa/*16*/))->_count/*4*/)%(_digit_nb);
_i=1;
/*[IF*/
if((_k)>(0)){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_342));
/*]*/
while (!((_k)==(0))) {
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1=/*(IRF4.6item*/(((T7*)((C)->_hexa/*16*/))->_storage/*0*/)[(_i)-(1)]/*)*/;
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
_i=(_i)+(1);
_k=(_k)-(1);
}
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\54';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
while (!((_i)>(((T7*)((C)->_hexa/*16*/))->_count/*4*/))) {
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_342));
/*]*/
_k=_digit_nb;
while (!((_k)==(0))) {
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1=/*(IRF4.6item*/(((T7*)((C)->_hexa/*16*/))->_storage/*0*/)[(_i)-(1)]/*)*/;
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
_i=(_i)+(1);
_k=(_k)-(1);
}
/*[IF*/
if((_i)<=(((T7*)((C)->_hexa/*16*/))->_count/*4*/)){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\54';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
}
/*No:BIT_CONSTANT.is_static*/
/*No:BIT_CONSTANT.is_manifest_string*/
/*No:BIT_CONSTANT.start_position*/
/*No:BIT_CONSTANT.fz_0x*/
/*No:BIT_CONSTANT.c_simple*/
T0* r55add_comment(T55* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r39count(((T39*)((((T82*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T230*n=malloc(sizeof(*n));
*n=M230;
r230make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
T2 r55to_integer(T55* C){
T2 R=0;
r55error((C)->_start_position/*4*/,((T0*)ms13_45846));
return R;
}
/*No:BIT_CONSTANT.use_current*/
T0* r55to_runnable(T55* C,T0* a1){
T0* R=NULL;
T0* _ic=NULL;
/*[IF*/
if(((C)->_result_type/*12*/)==((void*)(NULL))){
{T174*n=malloc(sizeof(*n));
*n=M174;
r174make(n,((T7*)((C)->_value/*8*/))->_count/*4*/,(C)->_start_position/*4*/);
_ic=(T0*)n;
}
{T276*n=malloc(sizeof(*n));
*n=M276;
r276make(n,(C)->_start_position/*4*/,_ic);
C->_result_type=(T0*)n;
}
r24set_at_run_time((T24*)(r276run_class((T276*)((C)->_result_type/*12*/))));
C->_hexa=r7twin((T7*)((C)->_value/*8*/));
r7to_hexadecimal((T7*)((C)->_hexa/*16*/));
}
/*FI]*/
R=(T0*)C;
return R;
}
/*No:BIT_CONSTANT.compile_to_c_old*/
/*No:BIT_CONSTANT.is_pre_computable*/
/*No:BIT_CONSTANT.collect_c_tmp*/
/*No:BIT_CONSTANT.fz_iinaiv*/
/*No:BIT_CONSTANT.result_type*/
/*No:BIT_CONSTANT.value*/
/*No:BIT_CONSTANT.is_result*/
/*No:BIT_CONSTANT.mapping_c_target*/
/*No:BIT_CONSTANT.can_be_dropped*/
/*No:BIT_CONSTANT.c_declare_for_old*/
/*No:BIT_CONSTANT.dca_inline_argument*/
void r55compile_to_c(T55* C){
/*[IF*/
if(r276is_c_unsigned_ptr((T276*)((C)->_result_type/*12*/))){
r25register_bit_constant((T25*)(oBC12cpp),(T0*)C);
}
else{
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_342));
/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),(C)->_hexa/*16*/);
/*]*/
}
/*FI]*/
}
/*No:BIT_CONSTANT.isa_dca_inline_argument*/
void r55error(T0* a1,T0* a2){
r21add_position(a1);
r21error((T21*)(oBC12eh),a2);
}
void r55make(T55* C,T0* a1,T0* a2){
C->_start_position=a1;
C->_value=a2;
}
/*No:BIT_CONSTANT.is_current*/
/*No:BIT_CONSTANT.is_void*/
/*No:BIT_CONSTANT.mapping_c_arg*/
/*No:BIT_CONSTANT.afd_check*/
/*No:TYPE_BIT_1.fz_void*/
/*No:TYPE_BIT_1.fz_to_t*/
/*No:TYPE_BIT_1.start_position*/
void r276standard_c_print_function(T276* C){
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
r24c_print_function((T24*)(r276run_class(C)));
}
/*FI]*/
}
/*No:TYPE_BIT_1.Cuptr*/
void r276used_as_reference(T276* C){
T0* _rf=NULL;
T0* _rc=NULL;
T0* _type_bit_ref=NULL;
/*[IF*/
if(r47fast_has((T47*)(oBC53mem_ref_nb),/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)){
}
else{
r47add_last((T47*)(oBC53mem_ref_nb),/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/);
{T373*n=malloc(sizeof(*n));
*n=M373;
r373make(n,(T0*)C);
_type_bit_ref=(T0*)n;
}
r382add_last((T382*)(oBC53mem_type_bit_ref),_type_bit_ref);
_rc=r373run_class(((T373*)_type_bit_ref));
r24set_at_run_time(((T24*)_rc));
_rf=r24get_feature_with(((T24*)_rc),((T0*)ms14_2695));
}
/*FI]*/
}
T2 r276mapping_code(T276* C){
T2 R=0;
/*[IF*/
if((/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)<=( T3BITS )){
R=17;
}
else if((/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)<=( T2BITS )){
R=18;
}
else{
R=19;
}
/*FI]*/
return R;
}
/*No:TYPE_BIT_1.us_put_1*/
T2 r276id(T276* C){
T2 R=0;
R=((T24*)(r276run_class(C)))->_id/*4*/;
return R;
}
/*No:TYPE_BIT_1.is_user_expanded*/
/*No:TYPE_BIT_1.is_pointer*/
T0* r276to_runnable(T276* C,T0* a1){
T0* R=NULL;
R=(T0*)C;
r276to_runnable_1_2(C);
return R;
}
/*No:TYPE_BIT_1.nb*/
void r276c_initialize_in(T276* C,T0* a1){
T2 _i=0;
/*[IF*/
if((r276mapping_code(C))==(19)){
r7extend(((T7*)a1),'\173');
_i=r276nb_unsigned(C);
while (!((_i)==(0))) {
r7extend(((T7*)a1),'0');
_i=(_i)-(1);
/*[IF*/
if((_i)>(0)){
r7extend(((T7*)a1),'\54');
}
/*FI]*/
}
r7extend(((T7*)a1),'\175');
}
else{
r7extend(((T7*)a1),'0');
}
/*FI]*/
}
/*No:TYPE_BIT_1.gc_define1*/
T2 r276nb_unsigned(T276* C){
T2 R=0;
T2 _ib=0;
_ib= T2BITS ;
R=(/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)/(_ib);
/*[IF*/
if(((/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)%(_ib))>(0)){
R=(R)+(1);
}
/*FI]*/
return R;
}
void r276to_reference(T276* C){
T0* _type_bit_ref=NULL;
T2 _idx=0;
_idx=r47fast_index_of((T47*)(oBC53mem_ref_nb),/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/);
_type_bit_ref=/*(IRF4.6item*/(((T382*)(oBC53mem_type_bit_ref))->_storage/*4*/)[_idx]/*)*/;
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_951a));
/*]*/
/*[IRF3.5put_integer*/r45put_integer(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),r373id(((T373*)_type_bit_ref)));
/*]*/
}
void r276gc_mark_in(T276* C,T0* a1){
r7append(((T7*)a1),((T0*)ms13_8869));
r2append_in(r276id(C),a1);
}
void r276set_run_time_mark(T276* C){
r7copy((T7*)(((T0*)ms54_785024)),((T0*)ms13_1060));
r7append((T7*)(((T0*)ms54_785024)),r2to_string(/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/));
C->_run_time_mark=r84item(((T0*)ms54_785024));
}
T0* r276run_class(T276* C){
T0* R=NULL;
R=r22run_class((T0*)C);
return R;
}
/*No:TYPE_BIT_1.c_header_pass2*/
/*No:TYPE_BIT_1.c_header_pass4*/
/*No:TYPE_BIT_1.is_like_current*/
/*No:TYPE_BIT_1.is_bit*/
T2 r276unsigned_padding(T276* C){
T2 R=0;
R=((r276nb_unsigned(C))*( T2BITS ))-(/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/);
return R;
}
T0* r276smallest_ancestor(T276* C,T0* a1){
T0* R=NULL;
T0* _other_bit=NULL;
_other_bit=X54run_type(a1);
if(NULL!=(_other_bit))switch(((T0*)_other_bit)->id) {
case 276: case 277:
break;
default:
_other_bit=NULL;
};/*[IF*/
if((_other_bit)!=((void*)(NULL))){
/*[IF*/
if((/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)<(X53nb(_other_bit))){
R=(T0*)C;
}
else{
R=_other_bit;
}
/*FI]*/
}
else{
R=r276type_any();
}
/*FI]*/
return R;
}
T6 r276is_c_int(T276* C){
T6 R=0;
R=(18)==(r276mapping_code(C));
return R;
}
/*No:TYPE_BIT_1.Cint*/
/*No:TYPE_BIT_1.run_time_mark*/
/*No:TYPE_BIT_1.n*/
/*No:TYPE_BIT_1.is_expanded*/
T6 r276is_c_char(T276* C){
T6 R=0;
R=(17)==(r276mapping_code(C));
return R;
}
/*No:TYPE_BIT_1.fz_char*/
/*No:TYPE_BIT_1.gc_info_in*/
/*No:TYPE_BIT_1.gc_define2*/
/*No:TYPE_BIT_1.is_like_feature*/
/*No:TYPE_BIT_1.fz_dot*/
T6 r276is_a(T276* C,T0* a1){
T6 R=0;
T0* _other_bit=NULL;
/*[IF*/
if(X54is_bit(a1)){
_other_bit=X54run_type(a1);
if(NULL!=(_other_bit))switch(((T0*)_other_bit)->id) {
case 276: case 277:
break;
default:
_other_bit=NULL;
};/*[IF*/
if((/*(IRF4.6nb*/(((T174*)((C)->_n/*16*/)))->_value/*8*//*)*/)<=(X53nb(_other_bit))){
R=1;
}
else{
r21add_type((T0*)C,((T0*)ms13_17730));
r21add_type(a1,((T0*)ms53_7780));
}
/*FI]*/
}
else if(r63is_subclass_of((T63*)(r276base_class(C)),X54base_class(a1))){
R=1;
r276used_as_reference(C);
}
else{
r21add_type((T0*)C,((T0*)ms13_17730));
r21add_type(a1,((T0*)ms13_47));
}
/*FI]*/
return R;
}
/*No:TYPE_BIT_1.written_mark*/
void r276c_initialize(T276* C){
T2 _i=0;
/*[IF*/
if((r276mapping_code(C))==(19)){
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms54_785024)))))->_count)=(0);
/*]*/
r7extend((T7*)(((T0*)ms54_785024)),'\173');
_i=r276nb_unsigned(C);
while (!((_i)==(0))) {
r7extend((T7*)(((T0*)ms54_785024)),'0');
_i=(_i)-(1);
/*[IF*/
if((_i)>(0)){
r7extend((T7*)(((T0*)ms54_785024)),'\54');
}
/*FI]*/
}
r7extend((T7*)(((T0*)ms54_785024)),'\175');
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms54_785024));
/*]*/
}
else{
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='0';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
/*No:TYPE_BIT_1.is_character*/
void r276make(T276* C,T0* a1,T0* a2){
C->_start_position=a1;
C->_n=a2;
r276set_run_time_mark(C);
C->_written_mark=(C)->_run_time_mark/*12*/;
}
void r276demangling_in(T276* C,T0* a1){
/*[IF*/
/*AF*//*AE*/
r7extend(((T7*)a1),'E');
/*FI]*/
r7extend(((T7*)a1),'\40');
r7append(((T7*)a1),(C)->_run_time_mark/*12*/);
}
/*No:TYPE_BIT_1.fz_typedef*/
void r276fatal_error_generic_list(T276* C){
r21add_type((T0*)C,((T0*)ms54_29184));
r21print_as_fatal_error((T21*)(oBC12eh));
}
/*No:TYPE_BIT_1.is_array*/
/*No:TYPE_BIT_1.fz_int*/
/*No:TYPE_BIT_1.Cchar*/
/*No:TYPE_BIT_1.tmp_string*/
/*No:TYPE_BIT_1.is_dummy_expanded*/
T2 r276space_for_variable(T276* C){
T2 R=0;
R=(r276nb_unsigned(C))*(( T2BITS )/( T3BITS ));
return R;
}
void r276to_runnable_1_2(T276* C){
T0* _rf=NULL;
T0* _rc=NULL;
_rc=r276run_class(C);
_rf=r24get_feature_with(((T24*)_rc),((T0*)ms14_2515));
_rf=r24get_feature_with(((T24*)_rc),((T0*)ms14_2520));
}
/*No:TYPE_BIT_1.to_expanded*/
T0* r276generic_list(T276* C){
T0* R=NULL;
r276fatal_error_generic_list(C);
return R;
}
T0* r276base_class(T276* C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=r276base_class_name();
/*[IF*/
if((_bcn)!=((void*)(NULL))){
R=r64base_class(((T64*)_bcn));
}
else{
/*[IRF3.6append*/{T0* b1=((T0*)ms54_37098);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
r21add_type((T0*)C,((T0*)ms13_47));
r21print_as_fatal_error((T21*)(oBC12eh));
}
/*FI]*/
return R;
}
void r276cast_to_ref(T276* C){
X53cast_to_ref(/*(IRF4.4run_type*/((T0*)(C))/*)*/);
}
T0* r276base_class_name(void){
if(fBC53base_class_name==0){
fBC53base_class_name=1;
{T64*n=malloc(sizeof(*n));
*n=M64;
r64make(n,((T0*)ms14_2055),NULL);
oBC53base_class_name=(T0*)n;
}
}
return oBC53base_class_name;}
/*No:TYPE_BIT_1.is_formal_generic*/
T6 r276is_a_in(T276* C,T0* a1,T0* a2){
T6 R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*[IF*/
if(((C)->_written_mark/*8*/)==((void*)(X54written_mark(a1)))){
R=1;
}
else{
_ct=(((T24*)a2))->_current_type/*0*/;
_t1=r276to_runnable(C,_ct);
_t2=X54to_runnable(a1,_ct);
/*[IF*/
if((X54run_time_mark(_t1))==((void*)(X54run_time_mark(_t2)))){
R=1;
}
else{
R=X54is_a(_t1,_t2);
}
/*FI]*/
}
/*FI]*/
return R;
}
/*No:TYPE_BIT_1.fz_unsigned*/
T0* r276look_up_for(T276* C,T0* a1,T0* a2){
T0* R=NULL;
R=r63look_up_for((T63*)(r276base_class(C)),a1,a2);
return R;
}
/*No:TYPE_BIT_1.fz_00*/
void r276c_type_for_external_in(T276* C,T0* a1){
/*[IF*/
/*AF*//*AE*/
/*[IRF3.6c_type_for_result_in*/{T276* C1=C;
T0* b1=a1;
r276c_type_for_argument_in(C1,b1);
}/*]*/
/*FI]*/
}
void r276c_type_for_argument_in(T276* C,T0* a1){
r7extend(((T7*)a1),'T');
r2append_in(r276id(C),a1);
}
void r276c_header_pass1(T276* C){
T2 _mem_id=0;
T2 _mc=0;
_mc=r276mapping_code(C);
_mem_id=r276id(C);
r7copy((T7*)(((T0*)ms54_785024)),((T0*)ms13_6568));
{int z1=r276mapping_code(C);
if((17==z1)){
r7append((T7*)(((T0*)ms54_785024)),((T0*)ms13_10920));
r7extend((T7*)(((T0*)ms54_785024)),'\40');
r7append((T7*)(((T0*)ms54_785024)),((T0*)ms13_1696));
}
else
if((18==z1)){
r7append((T7*)(((T0*)ms54_785024)),((T0*)ms13_10920));
r7extend((T7*)(((T0*)ms54_785024)),'\40');
r7append((T7*)(((T0*)ms54_785024)),((T0*)ms13_1011));
}
else {r7append((T7*)(((T0*)ms54_785024)),((T0*)ms13_10920));
}}
r7extend((T7*)(((T0*)ms54_785024)),'\40');
r7extend((T7*)(((T0*)ms54_785024)),'T');
r2append_in(_mem_id,((T0*)ms54_785024));
/*[IF*/
if((r276mapping_code(C))==(19)){
r7extend((T7*)(((T0*)ms54_785024)),'\133');
r2append_in(r276nb_unsigned(C),((T0*)ms54_785024));
r7extend((T7*)(((T0*)ms54_785024)),'\135');
}
/*FI]*/
r7append((T7*)(((T0*)ms54_785024)),((T0*)ms13_144));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms54_785024));
/*]*/
}
/*No:TYPE_BIT_1.c_type_for_result_in*/
/*No:TYPE_BIT_1.run_type*/
/*No:TYPE_BIT_1.c_type_for_target_in*/
/*No:TYPE_BIT_1.expanded_initializer*/
void r276c_frame_descriptor(T276* C){
r7extend((T7*)(oBC12c_frame_descriptor_format),'\45');
/*[IF*/
/*AF*//*AE*/
r7extend((T7*)(oBC12c_frame_descriptor_format),'E');
/*FI]*/
r2append_in(r276id(C),oBC12c_frame_descriptor_format);
r7extend((T7*)(oBC12c_frame_descriptor_format),'\45');
}
/*No:TYPE_BIT_1.has_creation*/
/*No:TYPE_BIT_1.c_header_pass3*/
void r276gc_call_new_in(T276* C,T0* a1){
r7append(((T7*)a1),((T0*)ms13_1008));
r2append_in(r276id(C),a1);
r7extend(((T7*)a1),'\50');
r7extend(((T7*)a1),'\51');
}
/*No:TYPE_BIT_1.fz_new*/
/*No:TYPE_BIT_1.is_boolean*/
void r276mapping_cast(T276* C){
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms54_15696)))))->_count)=(0);
/*]*/
r7extend((T7*)(((T0*)ms54_15696)),'\50');
/*[IRF3.6c_type_for_target_in*/{T276* C1=C;
T0* b1=((T0*)ms54_15696);
r276c_type_for_argument_in(C1,b1);
}/*]*/
r7extend((T7*)(((T0*)ms54_15696)),'\51');
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms54_15696));
/*]*/
}
/*No:TYPE_BIT_1.is_generic*/
/*No:TYPE_BIT_1.us_bit_n*/
/*No:TYPE_BIT_1.is_real*/
/*No:TYPE_BIT_1.need_c_struct*/
/*No:TYPE_BIT_1.is_any*/
/*No:TYPE_BIT_1.is_basic_eiffel_expanded*/
/*No:TYPE_BIT_1.fz_gc_mark*/
T0* r276type_any(void){
if(fBC12type_any==0){
fBC12type_any=1;
{T259*n=malloc(sizeof(*n));
*n=M259;
r259make(n,NULL);
oBC12type_any=(T0*)n;
}
}
return oBC12type_any;}
/*No:TYPE_BIT_1.need_gc_mark_function*/
T6 r276is_native_array(T276* C){
T6 R=0;
T0* _tna=NULL;
_tna=(T0*)C;
if(NULL!=(_tna))switch(((T0*)_tna)->id) {
case 263:
break;
default:
_tna=NULL;
};R=(_tna)!=((void*)(NULL));
return R;
}
/*No:TYPE_BIT_1.is_string*/
/*No:TYPE_BIT_1.is_integer*/
/*No:TYPE_BIT_1.fz_bit_foo*/
/*No:TYPE_BIT_1.is_anchored*/
/*No:TYPE_BIT_1.is_run_type*/
/*No:TYPE_BIT_1.us_put_0*/
/*No:TYPE_BIT_1.is_reference*/
/*No:TYPE_BIT_1.is_none*/
/*No:TYPE_BIT_1.fz_inako*/
/*No:TYPE_BIT_1.is_like_argument*/
/*No:TYPE_BIT_1.just_before_gc_mark_in*/
/*No:TYPE_BIT_1.mapping_cast_memory*/
/*No:TYPE_BIT_1.us_bitn*/
/*No:TYPE_BIT_1.is_double*/
T6 r276is_c_unsigned_ptr(T276* C){
T6 R=0;
R=(19)==(r276mapping_code(C));
return R;
}
/*No:CALL_INFIX_PLUS.static_value*/
/*No:CALL_INFIX_PLUS.call_proc_call_c2c*/
/*No:CALL_INFIX_PLUS.feature_name*/
void r132finalize(T132* C){
T0* _rf=NULL;
T0* _rc=NULL;
_rf=(C)->_run_feature/*16*/;
_rc=X54run_class(/*X51current_type*/((T0*)(((T324*)_rf))->_current_type/*4*/));
C->_run_feature=r24dynamic((T24*)(r328first((T328*)((((T24*)_rc))->_running/*12*/))),_rf);
}
T6 r132is_static(T132* C){
T6 R=0;
/*[IF*/
if(X54is_integer(r132result_type(C))){
/*[IF*/
if((X56is_static((C)->_target/*4*/))&&(X56is_static(r132arg1(C)))){
R=1;
C->_static_value_mem=(X56static_value((C)->_target/*4*/))+(X56static_value(r132arg1(C)));
}
/*FI]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_PLUS.is_manifest_string*/
T0* r132start_position(T132* C){
T0* R=NULL;
R=((T138*)((C)->_feature_name/*12*/))->_start_position/*8*/;
return R;
}
/*No:CALL_INFIX_PLUS.c_simple*/
T0* r132add_comment(T132* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r39count(((T39*)((((T82*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T230*n=malloc(sizeof(*n));
*n=M230;
r230make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
T2 r132to_integer(T132* C){
T2 R=0;
r132error(r132start_position(C),((T0*)ms13_45846));
return R;
}
T6 r132use_current(T132* C){
T6 R=0;
/*[IF*/
{/*AT*/R=X149use_current((C)->_arguments/*8*/);
}
/*FI]*/
/*[IF*/
if(R){
}
else if(X56is_current((C)->_target/*4*/)){
R=X51use_current((C)->_run_feature/*16*/);
}
else{
R=X56use_current((C)->_target/*4*/);
}
/*FI]*/
return R;
}
T0* r132to_runnable(T132* C,T0* a1){
T0* R=NULL;
T0* _rf=NULL;
T0* _tbee=NULL;
T0* _at=NULL;
T0* _tt=NULL;
T0* _a=NULL;
T0* _t=NULL;
_t=r132runnable_expression((C)->_target/*4*/,a1);
_a=r132runnable_args((C)->_arguments/*8*/,a1);
_tt=X56result_type(_t);
_at=X56result_type(r132arg1(C));
/*[IF*/
{/*AT*//*[IF*/
if(X54is_real(_at)){
/*[IF*/
if(X54is_integer(_tt)){
_tbee=X54run_type(_at);
if(NULL!=(_tbee))switch(((T0*)_tbee)->id) {
case 270: case 268: case 266: case 267: case 271: case 264:
break;
default:
_tbee=NULL;
};{T377*n=malloc(sizeof(*n));
*n=M377;
r377make(n,_t,_tbee);
_t=(T0*)n;
}
}
/*FI]*/
}
else if(X54is_double(_at)){
/*[IF*/
if((X54is_integer(_tt))||(X54is_real(_tt))){
_tbee=X54run_type(_at);
if(NULL!=(_tbee))switch(((T0*)_tbee)->id) {
case 270: case 268: case 266: case 267: case 271: case 264:
break;
default:
_tbee=NULL;
};{T377*n=malloc(sizeof(*n));
*n=M377;
r377make(n,_t,_tbee);
_t=(T0*)n;
}
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
_rf=r132run_feature_for(C,_t,a1);
/*[IF*/
if(((C)->_run_feature/*16*/)==((void*)(NULL))){
C->_target=_t;
C->_arguments=_a;
C->_run_feature=_rf;
r132run_feature_match(C,a1);
R=(T0*)C;
}
else if(((_t)==((void*)((C)->_target/*4*/)))&&((_a)==((void*)((C)->_arguments/*8*/)))){
R=(T0*)C;
}
else{
{T132*n=malloc(sizeof(*n));
*n=M132;
r132with(n,_t,(C)->_feature_name/*12*/,_a,_rf,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
void r132compile_to_c_old(T132* C){
X56compile_to_c_old((C)->_target/*4*/);
/*[IF*/
{/*AT*/X149compile_to_c_old((C)->_arguments/*8*/);
}
/*FI]*/
}
/*No:CALL_INFIX_PLUS.is_pre_computable*/
/*No:CALL_INFIX_PLUS.fz_bad_argument*/
void r132collect_c_tmp(T132* C){
/*[IF*/
if(((C)->_run_feature/*16*/)!=((void*)(NULL))){
X51collect_c_tmp((C)->_run_feature/*16*/);
}
/*FI]*/
X56collect_c_tmp((C)->_target/*4*/);
/*[IF*/
if(((C)->_arguments/*8*/)!=((void*)(NULL))){
X149collect_c_tmp((C)->_arguments/*8*/);
}
/*FI]*/
}
/*No:CALL_INFIX_PLUS.fz_iinaiv*/
T0* r132result_type(T132* C){
T0* R=NULL;
T0* _tla=NULL;
R=X51result_type((C)->_run_feature/*16*/);
/*[IF*/
if(X54is_like_current(R)){
R=/*X51current_type*/((T0*)((T324*)((C)->_run_feature/*16*/))->_current_type/*4*/);
}
else{
_tla=R;
if(NULL!=(_tla))switch(((T0*)_tla)->id) {
case 258:
break;
default:
_tla=NULL;
};/*[IF*/
if((_tla)!=((void*)(NULL))){
R=X54run_type(X56result_type(r132arg1(C)));
}
/*FI]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_PLUS.static_value_mem*/
/*No:CALL_INFIX_PLUS.run_feature*/
T0* r132runnable_args(T0* a1,T0* a2){
T0* R=NULL;
R=X149to_runnable(a1,a2);
/*[IF*/
if((R)==((void*)(NULL))){
r21add_position(X149start_position(a1));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms13_13065);
r21fatal_error((T21*)(oBC12eh),b1);
}/*]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_PLUS.fz_07*/
/*No:CALL_INFIX_PLUS.arg_count*/
void r132with(T132* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
C->_target=a1;
C->_feature_name=a2;
C->_arguments=a3;
C->_run_feature=a4;
r132run_feature_match(C,a5);
}
/*No:CALL_INFIX_PLUS.is_result*/
/*No:CALL_INFIX_PLUS.fatal_error*/
void r132mapping_c_target(T132* C,T0* a1){
T0* _actual_type=NULL;
T6 _flag=0;
_flag=r25call_invariant_start(a1);
_actual_type=X54run_type(r132result_type(C));
/*[IF*/
if(X54is_reference(_actual_type)){
/*[IF*/
if(X54is_reference(a1)){
X54mapping_cast(a1);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
X54to_expanded(_actual_type);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
else{
/*[IF*/
if(X54is_reference(a1)){
X54to_reference(_actual_type);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
/*[IF*/
if(X54need_c_struct(a1)){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\46';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(_flag){
/*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T45* C1=(T45*)(oBC25out_c);
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
void r132run_feature_match(T132* C,T0* a1){
r132run_feature_has_result(C);
X149match_with((C)->_arguments/*8*/,(C)->_run_feature/*16*/,a1);
}
/*No:CALL_INFIX_PLUS.arguments*/
T0* r132runnable_expression(T0* a1,T0* a2){
T0* R=NULL;
R=X56to_runnable(a1,a2);
/*[IF*/
if((R)==((void*)(NULL))){
r21add_position(X56start_position(a1));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms118_16515);
r21fatal_error((T21*)(oBC12eh),b1);
}/*]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_PLUS.can_be_dropped*/
void r132c_declare_for_old(T132* C){
X56c_declare_for_old((C)->_target/*4*/);
/*[IF*/
{/*AT*/X149c_declare_for_old((C)->_arguments/*8*/);
}
/*FI]*/
}
/*No:CALL_INFIX_PLUS.implicit_cast*/
void r132dca_inline_argument(T132* C,T0* a1){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
X56dca_inline_argument((C)->_target/*4*/,a1);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\53';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
X56dca_inline_argument(r132arg1(C),a1);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*No:CALL_INFIX_PLUS.compile_to_c*/
T2 r132isa_dca_inline_argument(T132* C){
T2 R=0;
/*[IF*/
if(X54is_integer(r132result_type(C))){
R=X56isa_dca_inline_argument((C)->_target/*4*/);
/*[IF*/
if((R)==(-(1))){
R=X56isa_dca_inline_argument(r132arg1(C));
}
else if((R)>(0)){
/*[IF*/
if((X56isa_dca_inline_argument(r132arg1(C)))>=(0)){
R=0;
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
return R;
}
T0* r132arg1(T132* C){
T0* R=NULL;
R=/*X149first*/((T0*)/*(IRF4.3first*/((T149*)((C)->_arguments/*8*/))->_first_one/*4*//*)*/);
return R;
}
void r132run_feature_has_result(T132* C){
/*[IF*/
if((X51result_type((C)->_run_feature/*16*/))==((void*)(NULL))){
r21add_position(X51start_position((C)->_run_feature/*16*/));
r21add_position(((T138*)((C)->_feature_name/*12*/))->_start_position/*8*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms117_53650);
r21fatal_error((T21*)(oBC12eh),b1);
}/*]*/
}
/*FI]*/
}
T0* r132run_feature_for(T132* C,T0* a1,T0* a2){
T0* R=NULL;
T0* _rc=NULL;
_rc=X54run_class(X56result_type(a1));
R=r24get_rf(((T24*)_rc),a1,(C)->_feature_name/*12*/,a2);
return R;
}
/*No:CALL_INFIX_PLUS.target*/
void r132error(T0* a1,T0* a2){
r21add_position(a1);
r21error((T21*)(oBC12eh),a2);
}
void r132make(T132* C,T0* a1,T0* a2,T0* a3){
C->_target=a1;
{T138*n=malloc(sizeof(*n));
*n=M138;
r138make(n,r132operator(),a2);
C->_feature_name=(T0*)n;
}
{T149*n=malloc(sizeof(*n));
*n=M149;
/*[IRF3.3make_1*/((((T149*)(n)))->_first_one)=(a3);
/*]*/
C->_arguments=(T0*)n;
}
}
/*No:CALL_INFIX_PLUS.us_plus*/
/*No:CALL_INFIX_PLUS.is_current*/
void r132mapping_c_arg(T132* C,T0* a1){
T0* _actual_type=NULL;
_actual_type=X54run_type(r132result_type(C));
/*[IF*/
if(X54is_reference(_actual_type)){
/*[IF*/
if(X54is_reference(a1)){
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
}
else{
X54to_expanded(_actual_type);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*FI]*/
}
else{
/*[IF*/
if(X54is_reference(a1)){
X54to_reference(_actual_type);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
/*[IF*/
if(X54need_c_struct(a1)){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\46';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
/*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T132* C1=C;
r25put_cpc((T25*)(oBC12cpp),(T0*)C1);
}/*]*/
/*]*/
}
/*FI]*/
}
/*FI]*/
}
/*FI]*/
}
/*No:CALL_INFIX_PLUS.is_void*/
T0* r132operator(void){
T0* R=NULL;
R=((T0*)ms14_44);
return R;
}
void r132afd_check(T132* C){
T0* _running=NULL;
T0* _rc=NULL;
_rc=X54run_class(X56result_type((C)->_target/*4*/));
_running=(((T24*)_rc))->_running/*12*/;
/*[IF*/
if((_running)==((void*)(NULL))){
r21add_position(X56start_position((C)->_target/*4*/));
/*[IRF3.6append*/{T0* b1=((T0*)ms118_181815);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=X54run_time_mark((((T24*)_rc))->_current_type/*0*/);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=((T0*)ms13_20094);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
r21print_as_warning((T21*)(oBC12eh));
r24set_at_run_time(((T24*)_rc));
}
else if((r328count(((T328*)_running)))>(1)){
r331update((C)->_target/*4*/,(C)->_run_feature/*16*/);
}
/*FI]*/
X56afd_check((C)->_target/*4*/);
/*[IF*/
{/*AT*/X149afd_check((C)->_arguments/*8*/);
}
/*FI]*/
}
/*No:CHARACTER_CONSTANT.static_value*/
/*No:CHARACTER_CONSTANT.mapping_c_target*/
/*No:CHARACTER_CONSTANT.is_static*/
/*No:CHARACTER_CONSTANT.can_be_dropped*/
/*No:CHARACTER_CONSTANT.is_manifest_string*/
/*No:CHARACTER_CONSTANT.start_position*/
/*No:CHARACTER_CONSTANT.set_pretty_print_mode*/
/*No:CHARACTER_CONSTANT.c_simple*/
/*No:CHARACTER_CONSTANT.c_declare_for_old*/
T0* r170add_comment(T170* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r39count(((T39*)((((T82*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T230*n=malloc(sizeof(*n));
*n=M230;
r230make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:CHARACTER_CONSTANT.to_integer*/
/*No:CHARACTER_CONSTANT.use_current*/
/*No:CHARACTER_CONSTANT.dca_inline_argument*/
void r170compile_to_c(T170* C){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\47';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IF*/
if((r3is_letter((C)->_value/*8*/))||(r3is_digit((C)->_value/*8*/))){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1=(C)->_value/*8*/;
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else if(((C)->_value/*8*/)==('\n')){
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\134';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='n';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\134';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
/*[IRF3.5put_integer*/r45put_integer(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),r2to_octal(((unsigned char)(C)->_value/*8*/)));
/*]*/
}
/*FI]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\47';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
/*No:CHARACTER_CONSTANT.to_runnable*/
T2 r170isa_dca_inline_argument(void){
T2 R=0;
/*[IF*/
{/*AT*/R=-(1);
}
/*FI]*/
return R;
}
/*No:CHARACTER_CONSTANT.compile_to_c_old*/
/*No:CHARACTER_CONSTANT.is_pre_computable*/
/*No:CHARACTER_CONSTANT.collect_c_tmp*/
/*No:CHARACTER_CONSTANT.fz_iinaiv*/
int fBC170result_type=0;
T0*oBC170result_type=NULL;
T0* r170result_type(void){
if(fBC170result_type==0){
fBC170result_type=1;
{T266*n=malloc(sizeof(*n));
*n=M266;
r266make(n,NULL);
oBC170result_type=(T0*)n;
}
}
return oBC170result_type;}
void r170error(T0* a1,T0* a2){
r21add_position(a1);
r21error((T21*)(oBC12eh),a2);
}
void r170make(T170* C,T0* a1,T3 a2,T2 a3){
C->_start_position=a1;
C->_value=a2;
/*[IRF3.3set_pretty_print_mode*/((((T170*)(C)))->_pretty_print_mode)=(a3);
/*]*/
}
/*No:CHARACTER_CONSTANT.pretty_print_mode*/
/*No:CHARACTER_CONSTANT.is_current*/
/*No:CHARACTER_CONSTANT.is_void*/
void r170mapping_c_arg(T170* C,T0* a1){
/*[IF*/
if(X54is_reference(a1)){
/*[IRF3.6to_reference*/{T266* C1=(T266*)(r170result_type());
r25to_reference((T25*)(oBC12cpp),(T0*)C1,r266type_character_ref());
}/*]*/
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\50';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
r170compile_to_c(C);
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1='\51';
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
}
else{
r170compile_to_c(C);
}
/*FI]*/
}
/*No:CHARACTER_CONSTANT.afd_check*/
/*No:CHARACTER_CONSTANT.value*/
/*No:CHARACTER_CONSTANT.is_result*/
void r36loading_path_add(T36* C,T0* a1,T0* a2,T2 a3){
T0* _line=NULL;
T0* _file=NULL;
/*[IF*/
if(((a3)>(5))||((r39count(((T39*)a1)))>(1024))){
r28w_put_string(((T0*)ms36_83580));
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,1024);
_line=(T0*)n;
}
r36append_lp_in(C,_line,a1);
r28w_put_string(_line);
exit(1);
}
/*FI]*/
{T37*n=malloc(sizeof(*n));
*n=M37;
/*[IRF3.1make*//*]*/
_file=(T0*)n;
}
r28sfr_connect((T28*)(oBC12echo),_file,a2);
/*[IF*/
if(/*(IRF4.7is_connected*/((((T37*)_file))->_path/*4*/)!=(NULL)/*)*/){
r28put_string((T28*)(oBC12echo),((T0*)ms36_25809));
r28put_string((T28*)(oBC12echo),a2);
r28put_string((T28*)(oBC12echo),((T0*)ms36_10070));
while (!(r37end_of_input(((T37*)_file)))) {
r37read_line(((T37*)_file));
_line=r7twin((T7*)(oBC38last_string));
/*[IF*/
if(r7has_suffix(((T7*)_line),((T0*)ms36_18194))){
r36loading_path_add(C,a1,_line,(a3)+(1));
}
else if(!(/*(IRF4.7empty*/((((T7*)_line))->_count/*4*/)==(0)/*)*/)){
r39add_last(((T39*)a1),_line);
}
/*FI]*/
}
r37disconnect(((T37*)_file));
}
/*FI]*/
}
/*No:SYSTEM_TOOLS.fz_runtime*/
/*No:SYSTEM_TOOLS.fz_void*/
/*No:SYSTEM_TOOLS.system_name*/
void r36parent_directory(T36* C,T0* a1){
/*[IF*/
if(r36slash_separator(C)){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\57'))) {
r7remove_last(((T7*)a1),1);
}
}
else if(r36backslash_separator(C)){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\134'))) {
r7remove_last(((T7*)a1),1);
}
}
else if(r36colon_separator(C)){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\72'))) {
r7remove_last(((T7*)a1),1);
}
}
else if((((T0*)ms36_756))==((void*)((C)->_system_name/*0*/))){
r7remove_last(((T7*)a1),1);
while (!((r7last(((T7*)a1)))==('\56'))) {
r7remove_last(((T7*)a1),1);
}
r7remove_last(((T7*)a1),1);
r7extend(((T7*)a1),'\135');
}
/*FI]*/
}
/*No:SYSTEM_TOOLS.windows_system*/
int fBC36o_suffix_memory=0;
T0*oBC36o_suffix_memory=NULL;
T0* r36o_suffix_memory(T36* C){
if(fBC36o_suffix_memory==0){
fBC36o_suffix_memory=1;
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,4);
oBC36o_suffix_memory=(T0*)n;
}
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms36_8721));
r7append((T7*)(((T0*)ms12_583550)),(C)->_system_name/*0*/);
r28sfr_connect_or_exit((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
oBC36o_suffix_memory=r28read_word_in((T28*)(oBC12echo),oBC12tmp_file_read);
r37disconnect((T37*)(oBC12tmp_file_read));
}
return oBC36o_suffix_memory;}
void r36put_c_main_function_type(T36* C,T0* a1){
/*[IF*/
if((((T0*)ms36_756))==((void*)((C)->_system_name/*0*/))){
r45put_string(((T45*)a1),((T0*)ms13_1776a));
}
else{
r45put_string(((T45*)a1),((T0*)ms13_1011));
}
/*FI]*/
}
/*No:SYSTEM_TOOLS.help_suffix*/
/*No:SYSTEM_TOOLS.fz_03*/
/*No:SYSTEM_TOOLS.us_none*/
/*No:SYSTEM_TOOLS.vms_system*/
/*No:SYSTEM_TOOLS.fz_se*/
T0* r36path_h(T36* C){
T0* R=NULL;
R=r7twin((T7*)(((T43*)(oBC12run_control))->_root_class/*8*/));
r7to_lower(((T7*)R));
/*[IF*/
if((((T0*)ms36_708))==((void*)((C)->_system_name/*0*/))){
while (!(((((T7*)R))->_count/*4*/)<=(4))) {
r7remove_last(((T7*)R),1);
}
}
/*FI]*/
r7append(((T7*)R),((T0*)ms12_306));
return R;
}
/*No:SYSTEM_TOOLS.beos_system*/
T0* r36get_environment_variable(T36* C,T0* a1){
T0* R=NULL;
T8 _p=0;
_p=r7to_external(((T7*)a1));
R=(NULL==(_p=getenv((char*)_p)))?NULL:((T0*)e2s((char*)_p));
return R;
}
/*No:SYSTEM_TOOLS.fz_sys*/
/*No:SYSTEM_TOOLS.fz_system_se*/
/*No:SYSTEM_TOOLS.fz_bin*/
/*No:SYSTEM_TOOLS.fz_loadpath_se*/
/*No:SYSTEM_TOOLS.fz_gc_lib*/
/*No:SYSTEM_TOOLS.dos_system*/
/*No:SYSTEM_TOOLS.sys_directory*/
/*No:SYSTEM_TOOLS.fz_b0*/
T0*oBC36system_list=NULL;
void r36read_loading_path_in(T36* C,T0* a1){
r36loading_path_add(C,a1,((T0*)ms36_18194),1);
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms36_8613));
r7append((T7*)(((T0*)ms12_583550)),(C)->_system_name/*0*/);
r36loading_path_add(C,a1,((T0*)ms12_583550),1);
}
T0* r36first_line_of_sys_file(T36* C,T0* a1){
T0* R=NULL;
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r7append((T7*)(((T0*)ms12_583550)),a1);
r7append((T7*)(((T0*)ms12_583550)),(C)->_system_name/*0*/);
r28sfr_connect_or_exit((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
r37read_line((T37*)(oBC12tmp_file_read));
R=r7twin((T7*)(oBC38last_string));
r37disconnect((T37*)(oBC12tmp_file_read));
return R;
}
void r36sys_runtime(T36* C,T0* a1,T3 a2){
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r36add_directory(C,((T0*)ms12_583550),((T0*)ms13_8988));
r7append((T7*)(((T0*)ms12_583550)),a1);
r7extend((T7*)(((T0*)ms12_583550)),'\56');
r7extend((T7*)(((T0*)ms12_583550)),a2);
r28sfr_connect_or_exit((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
}
void r36bad_use_exit(T36* C,T0* a1){
r28w_put_string(((T0*)ms36_46940));
r28w_put_string(a1);
r28w_put_string(((T0*)ms36_303));
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r36parent_directory(C,((T0*)ms12_583550));
r36add_directory(C,((T0*)ms12_583550),((T0*)ms36_966));
r7append((T7*)(((T0*)ms12_583550)),a1);
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms12_1632));
r28w_put_string(((T0*)ms36_39440));
r28w_put_string(((T0*)ms12_583550));
r28w_put_character('\n');
exit(1);
}
/*No:SYSTEM_TOOLS.amiga_system*/
int fBC36make_suffix=0;
T0*oBC36make_suffix=NULL;
T0* r36make_suffix(T36* C){
if(fBC36make_suffix==0){
fBC36make_suffix=1;
/*[IF*/
if((((T0*)ms36_708))==((void*)((C)->_system_name/*0*/))){
oBC36make_suffix=((T0*)ms36_1084);
}
else if((((T0*)ms36_9331))==((void*)((C)->_system_name/*0*/))){
oBC36make_suffix=((T0*)ms36_1468);
}
else if((((T0*)ms36_756))==((void*)((C)->_system_name/*0*/))){
oBC36make_suffix=((T0*)ms36_1116);
}
else if((((T0*)ms36_654))==((void*)((C)->_system_name/*0*/))){
oBC36make_suffix=((T0*)ms36_1072);
}
else{
oBC36make_suffix=((T0*)ms36_2375);
}
/*FI]*/
}
return oBC36make_suffix;}
void r36append_lp_in(T36* C,T0* a1,T0* a2){
T0* _sed=NULL;
T2 _i=0;
r7append(((T7*)a1),((T0*)ms36_12180));
_i=(((T39*)a2))->_lower/*12*/;
while (!((_i)>((((T39*)a2))->_upper/*8*/))) {
r7extend(((T7*)a1),'\40');
r7extend(((T7*)a1),'\42');
r7append(((T7*)a1),r39item(((T39*)a2),_i));
r7extend(((T7*)a1),'\42');
r7extend(((T7*)a1),'\n');
_i=(_i)+(1);
}
r7append(((T7*)a1),((T0*)ms36_33825));
_sed=r36get_environment_variable(C,((T0*)ms13_18788));
/*[IF*/
if((_sed)==((void*)(NULL))){
r7append(((T7*)a1),((T0*)ms36_5301));
}
else{
r7append(((T7*)a1),((T0*)ms36_138));
r7append(((T7*)a1),_sed);
r7append(((T7*)a1),((T0*)ms36_288));
}
/*FI]*/
}
T6 r36strip_executable(T36* C,T0* a1){
T6 R=0;
/*[IF*/
if((((T0*)ms36_1336))==((void*)((C)->_system_name/*0*/))){
R=1;
r7copy(((T7*)a1),((T0*)ms36_4614));
}
else if((((T0*)ms36_654))==((void*)((C)->_system_name/*0*/))){
R=1;
r7copy(((T7*)a1),((T0*)ms36_11184));
}
/*FI]*/
return R;
}
void r36put_mark_stack_and_registers(T36* C){
T0* _architecture=NULL;
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_410));
r28sfr_connect_or_exit((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
_architecture=r28read_word_in((T28*)(oBC12echo),oBC12tmp_file_read);
r37disconnect((T37*)(oBC12tmp_file_read));
/*[IF*/
if(r7is_equal((T7*)(((T0*)ms14_1256)),_architecture)){
/*[IRF3.6append*/{T0* b1=((T0*)ms36_123066);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=((T0*)ms12_583550);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
/*[IRF3.6append*/{T0* b1=((T0*)ms36_129800);
r7append((T7*)(oBC21explanation),b1);
}/*]*/
r21print_as_warning((T21*)(oBC12eh));
_architecture=((T0*)ms36_12915);
}
/*FI]*/
r7copy((T7*)(((T0*)ms12_583550)),(C)->_sys_directory/*4*/);
r36add_directory(C,((T0*)ms12_583550),((T0*)ms13_6678));
r7append((T7*)(((T0*)ms12_583550)),_architecture);
r28sfr_connect_or_exit((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
/*[IRF3.6put_c_file*/{T0* b1=oBC12tmp_file_read;
r25put_file(b1,oBC25out_c);
}/*]*/
}
/*No:SYSTEM_TOOLS.h_suffix*/
void r36add_directory(T36* C,T0* a1,T0* a2){
/*[IF*/
if(r36slash_separator(C)){
r7set_last(((T7*)a1),'\57');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\57');
}
else if(r36backslash_separator(C)){
r7set_last(((T7*)a1),'\134');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\134');
}
else if(r36colon_separator(C)){
r7set_last(((T7*)a1),'\72');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\72');
}
else if((((T0*)ms36_756))==((void*)((C)->_system_name/*0*/))){
r7set_last(((T7*)a1),'\135');
r7remove_last(((T7*)a1),1);
r7set_last(((T7*)a1),'\56');
r7append(((T7*)a1),a2);
r7set_last(((T7*)a1),'\135');
}
/*FI]*/
}
void r36make(T36* C){
T2 _i=0;
T0* _system_se_path=NULL;
_system_se_path=r36get_environment_variable(C,((T0*)ms13_18788));
/*[IF*/
if((_system_se_path)==((void*)(NULL))){
_system_se_path=r7twin((T7*)(((T0*)ms13_18788)));
r7to_upper(((T7*)_system_se_path));
_system_se_path=r36get_environment_variable(C,_system_se_path);
/*[IF*/
if((_system_se_path)==((void*)(NULL))){
r28put_string((T28*)(oBC12echo),((T0*)ms36_226958));
_system_se_path=((T0*)ms36_132226);
r28put_string((T28*)(oBC12echo),_system_se_path);
r28put_string((T28*)(oBC12echo),((T0*)ms13_166));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r7has_suffix(((T7*)_system_se_path),((T0*)ms13_13428))){
r28sfr_connect((T28*)(oBC12echo),oBC12tmp_file_read,_system_se_path);
}
else{
r28put_string((T28*)(oBC12echo),((T0*)ms36_852461));
/*[IF*/
if(r7has(((T7*)_system_se_path),'\57')){
r28put_string((T28*)(oBC12echo),((T0*)ms36_26690));
r7copy((T7*)(((T0*)ms12_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms12_583550)),'\57');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_1071));
r7extend((T7*)(((T0*)ms12_583550)),'\57');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_13428));
r28sfr_connect((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T37*)(oBC12tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
/*[IF*/
if(r7has(((T7*)_system_se_path),'\134')){
r28put_string((T28*)(oBC12echo),((T0*)ms36_38940));
r7copy((T7*)(((T0*)ms12_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms12_583550)),'\134');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_1071));
r7extend((T7*)(((T0*)ms12_583550)),'\134');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_13428));
r28sfr_connect((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T37*)(oBC12tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
/*[IF*/
if(r7has(((T7*)_system_se_path),'\72')){
r28put_string((T28*)(oBC12echo),((T0*)ms36_32565));
r7copy((T7*)(((T0*)ms12_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms12_583550)),'\72');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_1071));
r7extend((T7*)(((T0*)ms12_583550)),'\72');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_13428));
r28sfr_connect((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T37*)(oBC12tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
/*[IF*/
if(r7has(((T7*)_system_se_path),'\135')){
r28put_string((T28*)(oBC12echo),((T0*)ms36_20300));
r7copy((T7*)(((T0*)ms12_583550)),_system_se_path);
r7set_last((T7*)(((T0*)ms12_583550)),'\135');
r7remove_last((T7*)(((T0*)ms12_583550)),1);
r7extend((T7*)(((T0*)ms12_583550)),'\56');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_1071));
r7extend((T7*)(((T0*)ms12_583550)),'\135');
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_13428));
r28sfr_connect((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T37*)(oBC12tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
r28put_string((T28*)(oBC12echo),((T0*)ms36_8302));
r7copy((T7*)(((T0*)ms12_583550)),_system_se_path);
r7append((T7*)(((T0*)ms12_583550)),((T0*)ms13_13428));
r28sfr_connect((T28*)(oBC12echo),oBC12tmp_file_read,((T0*)ms12_583550));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(/*(IRF4.7is_connected*/(((T37*)(oBC12tmp_file_read))->_path/*4*/)!=(NULL)/*)*/)){
r28w_put_string(((T0*)ms36_720532));
exit(1);
}
/*FI]*/
r37read_line((T37*)(oBC12tmp_file_read));
C->_system_name=oBC38last_string;
_i=r39index_of((T39*)(oBC36system_list),(C)->_system_name/*0*/);
/*[IF*/
if((_i)>(((T39*)(oBC36system_list))->_upper/*8*/)){
r28w_put_string(((T0*)ms36_44196));
r28w_put_string(((T37*)(oBC12tmp_file_read))->_path/*4*/);
r28w_put_string(((T0*)ms36_23364));
_i=1;
while (!((_i)>(((T39*)(oBC36system_list))->_upper/*8*/))) {
r28w_put_string(r39item((T39*)(oBC36system_list),_i));
r28w_put_character('\n');
_i=(_i)+(1);
}
exit(1);
}
else{
C->_system_name=r39item((T39*)(oBC36system_list),_i);
r28put_string((T28*)(oBC12echo),((T0*)ms36_10175));
r28put_string((T28*)(oBC12echo),(C)->_system_name/*0*/);
r28put_string((T28*)(oBC12echo),((T0*)ms13_288));
}
/*FI]*/
C->_sys_directory=r7twin((T7*)(((T37*)(oBC12tmp_file_read))->_path/*4*/));
/*[IRF3.6remove_suffix*/{T7* C1=(T7*)((C)->_sys_directory/*4*/);
T0* b1=((T0*)ms13_13428);
r7remove_last(C1,(((T7*)b1))->_count/*4*/);
}/*]*/
r37disconnect((T37*)(oBC12tmp_file_read));
C->_bin_directory=r7twin((T7*)((C)->_sys_directory/*4*/));
r36parent_directory(C,(C)->_bin_directory/*8*/);
r36add_directory(C,(C)->_bin_directory/*8*/,((T0*)ms13_957));
}
/*No:SYSTEM_TOOLS.os2_system*/
T6 r36colon_separator(T36* C){
T6 R=0;
/*[IF*/
if((((T0*)ms36_12951))==((void*)((C)->_system_name/*0*/))){
R=1;
}
else if((((T0*)ms36_1356))==((void*)((C)->_system_name/*0*/))){
R=1;
}
/*FI]*/
return R;
}
T6 r36slash_separator(T36* C){
T6 R=0;
/*[IF*/
if((((T0*)ms36_1336))==((void*)((C)->_system_name/*0*/))){
R=1;
}
else if((((T0*)ms36_2470))==((void*)((C)->_system_name/*0*/))){
R=1;
}
/*FI]*/
return R;
}
T6 r36backslash_separator(T36* C){
T6 R=0;
/*[IF*/
if((((T0*)ms36_9331))==((void*)((C)->_system_name/*0*/))){
R=1;
}
else if((((T0*)ms36_708))==((void*)((C)->_system_name/*0*/))){
R=1;
}
else if((((T0*)ms36_654))==((void*)((C)->_system_name/*0*/))){
R=1;
}
/*FI]*/
return R;
}
/*No:SYSTEM_TOOLS.unix_system*/
/*No:SYSTEM_TOOLS.exit_failure_code*/
/*No:SYSTEM_TOOLS.fz_int*/
/*No:SYSTEM_TOOLS.macintosh_system*/
/*No:SYSTEM_TOOLS.bin_directory*/
/*No:SYSTEM_TOOLS.fz_gc*/
/*No:SYSTEM_TOOLS.tmp_path*/
void r368c_define_opening(T368* C){
T0* _t=NULL;
/*[IF*/
/*AF*//*AE*/
/*FI]*/
/*[IF*/
/*AF*/if(((C)->_result_type/*40*/)!=((void*)(NULL))){
_t=X54run_type((C)->_result_type/*40*/);
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms51_3077376)))))->_count)=(0);
/*]*/
X54c_type_for_result_in(_t,((T0*)ms51_3077376));
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_543));
X54c_initialize_in(_t,((T0*)ms51_3077376));
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms13_144));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
r7append((T7*)(oBC12c_frame_descriptor_locals),((T0*)ms51_10703));
r204increment((T204*)(oBC12c_frame_descriptor_local_count));
r7append((T7*)(oBC12c_frame_descriptor_format),((T0*)ms14_7404));
X54c_frame_descriptor(_t);
}
/*FI]*/
}
/*FI]*/
/*[IF*/
/*AF*//*AE*/
/*FI]*/
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215c_declare_for_old((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IF*/
if((((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)>(0)){
r7copy((T7*)(((T0*)ms51_3077376)),((T0*)ms51_21762));
/*[IRF3.5append_in*/r2append_in(((T2)(((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)),((T0*)ms51_3077376));
/*]*/
r7extend((T7*)(((T0*)ms51_3077376)),'\135');
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms13_144));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
}
/*FI]*/
r368c_initialize_ds_one_by_one(C);
/*[IRF3.2c_initialize_locals_one_by_one*/{T3 _c=0;
T2 _j=0;
T2 _i=0;
_j=1;
while (!((((T204*)(oBC12c_frame_descriptor_local_count))->_value/*0*/)==(_i))) {
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_8225));
/*]*/
/*[IRF3.5put_integer*/r45put_integer(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),_i);
/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_314));
/*]*/
_c=/*(IRF4.6item*/(((T7*)(oBC12c_frame_descriptor_locals))->_storage/*0*/)[(_j)-(1)]/*)*/;
while (!((_c)==('\54'))) {
/*[IRF3.5put_character*//*[IRF3.6put_character*/{T45* C1=((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/));
T3 b1=_c;
putc(b1,((FILE*)((C1)->_output_stream/*4*/)));
}/*]*/
/*]*/
_j=(_j)+(1);
_c=/*(IRF4.6item*/(((T7*)(oBC12c_frame_descriptor_locals))->_storage/*0*/)[(_j)-(1)]/*)*/;
}
_j=(_j)+(1);
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_144));
/*]*/
_i=(_i)+(1);
}
}/*]*/
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_14820a));
/*]*/
}
/*FI]*/
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215compile_to_c_old((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
/*AF*//*AE*/
/*FI]*/
/*[IF*/
/*AF*//*AE*/
/*FI]*/
/*[IF*/
/*AF*//*AE*/
/*FI]*/
/*[IF*/
if(((C)->_require_assertion/*20*/)!=((void*)(NULL))){
r357compile_to_c((T357*)((C)->_require_assertion/*20*/));
}
/*FI]*/
/*[IF*/
/*AF*//*AE*/
/*FI]*/
}
void r368c_define_closing(T368* C){
/*[IF*/
if(r43ensure_check((T43*)(oBC12run_control))){
/*[IF*/
if(((C)->_ensure_assertion/*24*/)!=((void*)(NULL))){
r215compile_to_c((T215*)((C)->_ensure_assertion/*24*/));
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r368use_current(C)){
r25current_class_invariant((C)->_current_type/*4*/);
}
/*FI]*/
/*[IF*/
/*AF*//*AE*/
/*FI]*/
/*[IF*/
if(r43no_check((T43*)(oBC12run_control))){
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_19775));
/*]*/
}
/*FI]*/
}
void r368c_assertion_flag(T368* C){
/*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms51_3077376)))))->_count)=(0);
/*]*/
r368c_frame_descriptor_name_in(C,((T0*)ms51_3077376));
r7append((T7*)(((T0*)ms51_3077376)),((T0*)ms51_30510));
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms51_3077376));
/*]*/
}
/*No:RUN_FEATURE_9.use_current_state*/
void r368default_mapping_procedure(T368* C){
r368default_mapping_function(C);
/*[IRF3.5put_string*/r45put_string(((T45*)(((T25*)(oBC12cpp))->_current_out/*56*/)),((T0*)ms13_144));
/*]*/
}
/*No:RUN_FEATURE_9.fz_void*/